<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <h1>我是哈哈哈</h1>

    <script>
        var str = '{"error":0,"data":"你好,我是一个服务器返回的数据","message":"请求成功"}';

        // 1 ES5 新增的一个对象 JSON
        // 这个对象有两个方法 parse()  stringify()
        // JSON.parse(jsonStr) 参数是一个JSON字符串 返回值是一个根据这个JSON字符串格式化之后得到的对象  
        // var obj = JSON.parse(str);
        // console.log(obj);
        // obj.ok = 200

        // JSON.stringify(obj) 参数是一个对象或者数组 返回值是一个根据这个对象或数组字符化之后的字符串  
        // var str1 = JSON.stringify(obj)
        // console.log(str1)




        // 2 eval() 将字符串当作代码来执行  
        // var obj = eval("(" + str + ")"); // 等于是直接将一个对象的定义放在全局中  此时浏览器会报错
        // console.log(obj)


        // 3 new Function()  Function的使用方式 所有的参数都是字符串  最后一个参数是函数体 前面的都是形参
        // var fun = new Function("a", "b","c", "return a + b");
        // console.log(fun)

        // var fun = new Function("return " + str);
        // var obj = fun();
        // console.log(obj.data)


        // 总结：
        // 重点1 HTTP请求的流程
        // 重点2 HTTP请求的组成
        // 重点3 HTTP请求的GET和POST方式 
        // 重点4 AJAX的请求流程
         
    </script>
</body>

</html>